<template>
    <div class="wrapper">
        <div class="status-bar" :style="{'height': statusHeight}"></div>
        <div class="header">
            <!-- <image class="header-bg" resize="cover" src="http://yanxuan.nosdn.127.net/6ae93353e95b3450a2710bb43f925a63.jpg"></image> -->
            <div class="header-bg"></div>
            <image class="i-photo" resize="cover" :src="infoObj.avatar || 'test'"></image>
            <!-- <image class="v-img" resize="cover" src="bmlocal://assets/acw/alreadyVerify.png" v-if="infoObj.verified"></image>
            <image class="v-img" resize="cover" src="bmlocal://assets/acw/noVerify.png" v-if="!infoObj.verified"></image> -->
            <!-- <text class="i-name">{{infoObj.trueName || "暂未起名"}}</text> -->
            <div class="nameDiv">

                <text class="i-name2">{{infoObj.trueName || "暂无名称"}}</text>
                <image class="v-img2" resize="cover" src="bmlocal://assets/acw/allVer1.png" v-if="infoObj.verified"></image>
                <image class="v-img2" resize="cover" src="bmlocal://assets/acw/noVer1.png" v-if="!infoObj.verified"></image>
            </div>
            <div class="b-tlt">
                <!-- <image class="i-tag tag-e" resize="contain" src="http://yanxuan.nosdn.127.net/3dc6e876620bb84a5dac3deb6ecd4916.png"></image>
                <text class="i-tag tag-v8 iconfont">&#xe6cc;</text> -->
                <!-- <text class="txt-tag" @click="signIn">立即签到</text> -->
                <!-- <image class="v-img2" resize="cover" src="bmlocal://assets/acw/noVerify.png"></image> -->
                <!--<text class="txt-tag" @click="toSignTrack">每日签到</text>-->
            </div>
            <!-- <text class="b-qrcode iconfont">&#xe60e;</text> -->
            <text class="b-right" @click="toUpdateInfo">完善个人信息</text>
        </div>
        <div class="s-box cell-button">
            <!-- <div class="box-tlt border-bottom">
                <text class="box-txt">我的钱包</text>
                <text class="i-box-in iconfont">&#xe600;</text>
            </div> -->
            <div class="box-tlt2">
                
            </div>
            <div class="box-line">
                <div class="i-box-l" @click="toCollection">
                    <text class="i-box-icon iconfont">&#xe637;</text>
                    <text class="i-box-tlt">我的收藏</text>
                </div>
                <div class="i-box-l" @click="toHistory">
                    <text class="i-box-icon iconfont">&#xe636;</text>
                    <text class="i-box-tlt">浏览记录</text>
                </div>
                <!-- <div class="i-box-l" @click="toAdvisory">
                    <text class="i-box-icon iconfont">&#xe633;</text>
                    <text class="i-box-tlt">我的资讯</text>
                </div> -->
                <div class="i-box-l" @click="toDiscountCoupon">
                    <text class="red-point" v-if="couponNum > 0">{{couponNum}}</text>
                    <text class="i-box-icon iconfont">&#xe63d;</text>
                    <text class="i-box-tlt">优惠券</text>
                </div>
                <div class="i-box-l" @click="shareWX">
                    <text class="i-box-icon iconfont">&#xe66c;</text>
                    <text class="i-box-tlt">分享有礼</text>
                </div>
            </div>
        </div>
        <div class="s-box cell-button">
            <div class="merchant_enter box-tlt border-bottom">
                <text class="box-txt">我的服务</text>
            </div>
            <div class="merchant_enter box-line line-serve  border-bottom">
                <div class="i-box-l" @click="toMyCar">
                    <text class="i-box-icon iconfont">&#xe606;</text>
                    <text class="i-box-tlt">我的车辆</text>
                </div>
                <div class="i-box-l" @click="toSellCars">
                    <text class="i-box-icon iconfont">&#xe639;</text>
                    <text class="i-box-tlt">我卖的车</text>
                </div>
                <div class="i-box-l" @click="toOrder">
                    <text class="i-box-icon iconfont">&#xeb36;</text>
                    <text class="i-box-tlt">服务订单</text>
                </div>
                <div class="i-box-l" @click="toActivity">
                    <text class="i-box-icon iconfont">&#xe63f;</text>
                    <text class="i-box-tlt">我的活动</text>
                </div>
            </div>
            <div class="merchant_enter border-bottom" @click="toMerchant">
                <text class="merchant_text">商家入口</text>
                <text class="iconfont merchant_icon">&#xe605;</text>
            </div>
            <div class="merchant_enter border-bottom"  @click="toSetting">
                <text class="merchant_text">设置</text>
                <text class="iconfont merchant_icon">&#xe605;</text>
            </div>
        </div>
        <wxc-loading :show="isShowLoad" type="default"></wxc-loading>
        <wxc-part-loading :show="isShowLoad"></wxc-part-loading>
    </div>
</template>
<script>
import he from '../utils/he';
import { SERVICES } from './config';
import { WxcLoading, WxcPartLoading } from 'weex-ui';

var bmWXShare = weex.requireModule('bmWXShare')

Vue.filter('myFilter', function(value) {
    return he.decode(value);
})
//如果 selltype 为 0，则为平台（后台）； 如果 为 1，则为 个人； 如果为 2，则为 商家，
export default {
    components: {
        WxcLoading, 
        WxcPartLoading
    },
    mounted() {
        this.getService()
    },
    created () {
        this.isShowLoad = true;
        this.getWorkerInfo()
        this.$event.on('refreshUserInfo',(params) => {
            // params 为触发该事件所传的参数
            this.infoObj = params;
        });
        this.wxInit()
        this.getCouponCount()
    },
    data() {
        return {
            services: [],
            serviceLength: 0,
            statusHeight: Number.parseInt(this.statusBarHeight || weex.config.env.statusBarHeight || 40),
            token: '',
            infoObj: {},
            isShowLoad: false,
            couponNum: 0,
        }
    },
    methods: {
        // 返回
        back () {
            this.$router.back();
        },
        // 提示
        cantuse () {
            this.$notice.toast({ message: "开发中，敬请期待..."})
        },
        jumpWeb(_url) {
            this.$router.toWebView({
                url: _url,
                title: '',
                navShow: true,
            })
        },
        getService() {
        	// this.$fetch({
         //        method: 'POST',
         //        name: 'yanxuan_my_getService',
         //        data: {}
         //    }).then(resData => {
         //        this.services = resData.data
         //        this.getLength()
         //    }, error => {

         //    })

         this.services = SERVICES
         this.getLength()
        },
        getLength() {
            this.serviceLength = Math.ceil(this.services.length / 4)
        },
        signIn() {

            const vm = this;
            var userInfo = this.$storage.getSync('UserInfo');

            this.token = userInfo.token;
            this.$fetch({
                method: 'POST',    // 大写
                name: 'login.signin', //当前是在apis中配置的别名，你也可以直接绝对路径请求 如：url:http://xx.xx.com/xxx/xxx
                data: {},
                header: {
                    'X-TMACW-APP-Token': this.token
                }
            }).then(resData => {
                // 成功回调
                if(resData && resData.errno == 0) {
                    vm.$notice.toast({ message: "签到成功"})
                } else if(resData && resData.errno == 501){
                    this.backLogin()
                } else {
                    this.$notice.toast({ message: resData.errmsg})
                }
            }, error => {
                // 错误回调
                console.log(error)
                this.$notice.toast({ message: "签到失败，请重试"})
            })
        },
        getWorkerInfo() {
            const vm = this;
            var userInfo = this.$storage.getSync('UserInfo');

            this.token = userInfo.token;
            this.$fetch({
                method: 'POST',    // 大写
                name: 'worker.info', //当前是在apis中配置的别名，你也可以直接绝对路径请求 如：url:http://xx.xx.com/xxx/xxx
                data: {},
                header: {
                'X-TMACW-APP-Token': this.token
                }
            }).then(resData => {
                // 成功回调
                setTimeout(() => {
                    this.isShowLoad = false;
                }, 500)
                if(resData && resData.errno == 0) {
                    this.infoObj = resData.data.worker;
                    this.$storage.setSync('UserInfo', {
                        token: userInfo.token,
                        id: userInfo.id,
                        trueName: resData.data.worker.trueName,
                        mobile: resData.data.worker.mobile,
                        verified: resData.data.worker.verified,
                        deposit: resData.data.worker.deposit,
                        depositPaid: resData.data.worker.depositPaid,
                        integral: resData.data.worker.integral
                    })
                } else if(resData && resData.errno == 501){
                    this.backLogin()
                } else {
                    this.$notice.toast({ message: resData.errmsg})
                }
            }, error => {
                // 错误回调
                setTimeout(() => {
                    this.isShowLoad = false;
                }, 500)
                console.log(error)
                this.$notice.toast({ message: "获取失败，请重试"})
            })
        },
        wxShareSuccess() {
            const vm = this;
            var userInfo = this.$storage.getSync('UserInfo');

            this.token = userInfo.token;
            this.$fetch({
                method: 'POST',    // 大写
                name: 'my.wxShareSuccess', //当前是在apis中配置的别名，你也可以直接绝对路径请求 如：url:http://xx.xx.com/xxx/xxx
                data: {},
                header: {
                'X-TMACW-APP-Token': this.token
                }
            }).then(resData => {
                // 成功回调
                if(resData && resData.errno == 0) {
                } else if(resData && resData.errno == 501){
                    this.backLogin()
                } else {
                    this.$notice.toast({ message: resData.errmsg})
                }
            }, error => {
                // 错误回调
                // setTimeout(() => {
                //     this.isShowLoad = false;
                // }, 500)
                console.log(error)
                this.$notice.toast({ message: "获取积分失败，请重试"})
            })
        },
        backLogin () {
            this.$storage.setSync('LoginStatus', 'false')
            this.$storage.setSync('UserInfo', {})
            this.$router.open({
                name: 'acw.home.login',
                type: 'PUSH',
                canBack: false,
            })
        },
        toUpdateInfo() {
            this.$router.open({
                name: 'acw.my.upateInfo',
                type: 'PUSH',
                params: this.infoObj
            })
        },
        toSignTrack() {
            this.$router.open({
                name: 'acw.my.signTrack',
                type: 'PUSH'
            })
        },
        toPromise() {    
            this.$router.open({
                name: 'acw.my.promise',
                type: 'PUSH'
            })
        },
        toBalance() {    
            this.$router.open({
                name: 'acw.my.balance',
                type: 'PUSH'
            })
        },
        toTraDetail() {    
            // this.$router.open({
            //     name: 'acw.my.traDetail',
            //     type: 'PUSH'
            // })
        },
        toMyCar () {
            this.$router.open({
                name: 'acw.my.mycar',
                type: 'PUSH'
            })
        },
        toSellCars() {  
            this.$router.open({
                name: 'acw.my.mysellcar',
                type: 'PUSH'
            })
        },
        toSetting() {    
            this.$router.open({
                name: 'acw.my.setting',
                type: 'PUSH'
            })
        },
        toMerchant () {
            let statusLogin = this.$storage.getSync('StoreLoginStatus')
            if (statusLogin == "true") {
                this.$router.open({
                    name: 'acw.my.merchant.index',
                    type: 'PUSH'
                })
            } else {
                this.$router.open({
                    name: 'acw.my.merchant.login',
                    type: 'PUSH'
                })
            }
            
        },
        // 跳转订单
        toOrder () {
            this.$router.open({
                name: 'acw.service.maintennace.order',
                type: 'PUSH',
            });
        },
        // 跳转我的活动
        toActivity () {
            this.$router.open({
                name: 'acw.my.myactivity',
                type: 'PUSH',
            });
        },
        // 跳转我的收藏
        toCollection () {
            this.$router.open({
                name: 'acw.my.collection',
                type: 'PUSH',
            });
        },
        // 跳转浏览记录
        toHistory () {
            this.$router.open({
                name: 'acw.my.history',
                type: 'PUSH',
            });
        },
        // 跳转浏览记录
        toAdvisory () {
            this.$router.open({
                name: 'acw.my.advisory',
                type: 'PUSH',
            });
        },
        toRock() {    
            this.$router.open({
                name: 'acw.my.rock',
                type: 'PUSH'
            })
        },
        toBui() {    
            this.$router.open({
                name: 'demo.other.buiTest',
                type: 'PUSH'
            })
        },
        toReplacementOrder() {    
            this.$router.open({
                name: 'acw.order.replacementOrder',
                type: 'PUSH'
            })
        },
        toDiscountCoupon(){
            //优惠券
            this.$router.open({
                name: 'acw.my.discountCoupon',
                type: 'PUSH',
                navShow:true,
                navTitle:'优惠券'
            })
        },
        wxInit() {
            // 5cadf0fb0cafb25c0c00015c ios ||  5c655bf7b465f546ee00069e android
            if(weex.config.env.osName =='android'){
                bmWXShare.initUM('5c655bf7b465f546ee00069e')  
            } else {
                bmWXShare.initUM('5cadf0fb0cafb25c0c00015c')
            }
            bmWXShare.initWX({
                appKey: 'wxf4cc61d23f1c0461', // 微信开发平台申请的appkey
                appSecret: '155fabcaddd64ab33b83e6d7924b5a0e', // appKey对应的appSecret，
                redirectURL: '/js/pages/login/index.js' // 授权回调页面
            })
        },
        shareWX() {
            const vm = this;
            let shareUrl = ''
            var result = bmWXShare.isInstallWXApp()

            if(!result) {
                this.$notice.toast({ message: "请先安装微信客户端！"})
                return;
            }
            if(weex.config.env.osName =='android'){
                shareUrl = 'https://www.pgyer.com/acw-android'
            } else {
                shareUrl = 'https://www.pgyer.com/acw-ios'
            }
            bmWXShare.share({
                title:'添美爱车网', // 分享的标题
                content:'好友邀请你加入添美爱车网，二手车直接交易无任何费用，有机会获得2万公里免费质保和汽车售后服务', // 分享的文字内容
                url: shareUrl, // 分享对应的URL地址，如h5、音乐链接、视频链接、小程序的链接
                image: 'https://www.tl2c.cn/logo.png', // 分享的图片url
                shareType: 'Webpage', // 分享的类型
                platform: 'WechatSession' // 分享平台 朋友圈/好友（注意：历史版本的字段名是platforms,现在是一个字符串而不是数组）
            },function(resData){ // 注意： 历史版本返回的是一个promise对象，现在的是callback回调
                // 成功回调
                vm.$notice.toast({ message: "分享成功"})
                // vm.wxShareSuccess();
            },function(resData){
                // 失败回调
                vm.$notice.toast({ message: "分享失败"})
            })
        },
        getCouponCount() {
            const vm = this;
            var userInfo = this.$storage.getSync('UserInfo');
            this.token = userInfo.token;
            this.$fetch({
                method: 'POST',    // 大写
                name: 'coupon.count', //当前是在apis中配置的别名，你也可以直接绝对路径请求 如：url:http://xx.xx.com/xxx/xxx
                data: {},
                header: {
                    'X-TMACW-APP-Token': this.token
                }
            }).then(resData => {
                // 成功回调
                if(resData && resData.errno == 0) {
                   this.couponNum = resData.data
                }
            }, error => {
                // 错误回调
                console.log(error)
            })
        },
    }
}
</script>
<style lang="sass" src="./index.scss"></style>
<style>
.iconfont {
    font-family: iconfont;
}
.iconfontThisMenu {
    font-size: 60px;
    color: #1E90FF;
}
.iconfontMenu {
    font-size: 60px;
    color: #bfbfbf;
}
</style>
